home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 4 / FM Towns Free Software Collection 4 - Disc 1.iso / fb386 / pickup / ske4.bas < prev    next >
BASIC Source File  |  1991-10-18  |  11KB  |  219 lines

  1. 1 KEY(1) ON:ON KEY(1) GOSUB 65010
  2. 10 '   -----------------------------------------------------------   
  3. 20 '  ----                             For F-BASIC 386 V1.1L20 ---  
  4. 30 ' -----                                       ----- 
  5. 40 '------                                               ---- 
  6. 50 ' -----                           Programed By SKEMARO---  
  7. 60 '  ------------------------------------------------------------   
  8. 70 LOAD@"PDRUMS.PMB"
  9. 80 'LOAD@""
  10. 90 GOSUB *めさーじゅ表示:PLAY OFF:BGM 1:FOR I=0 TO 13:PART I,I:NEXT
  11. 100 DIM T%(4,9),V%(23),D%(47)
  12. 110 TNO%=1 : TNAME$="SYNTH-1" : RESTORE 110
  13. 120 FOR Y%=0 TO 4 : FOR X%=0 TO 9:READ T%(Y%,X%):NEXT:NEXT:GOSUB *TNCONV
  14. 130 '
  15. 140 DATA 60, 0, 0, 0, 0, 0, 0, 0, 3, 0
  16. 150 DATA 21,10, 0, 7, 1,23, 1, 3, 3, 0
  17. 160 DATA 21,10, 4, 7, 0, 8, 0, 2, 3, 0
  18. 170 DATA 21,10, 0, 7, 2,17, 0, 4, 7, 0
  19. 180 DATA 21,10, 4, 7, 0, 8, 0, 2, 7, 0
  20. 190 TNO%=2 : TNAME$="BASS" : RESTORE 190
  21. 200 FOR Y%=0 TO 4 : FOR X%=0 TO 9:READ T%(Y%,X%):NEXT:NEXT:GOSUB *TNCONV
  22. 210 '
  23. 220 DATA 58, 0, 0, 0, 0, 0, 0, 0, 3, 0
  24. 230 DATA 31,10, 8, 7, 1,20, 0, 1, 3, 0
  25. 240 DATA 21, 0, 0, 7, 0,28, 0, 1, 3, 0
  26. 250 DATA 21, 0, 0, 7, 0,31, 0, 3, 7, 0
  27. 260 DATA 21, 0, 0, 7, 0, 5, 0, 2, 0, 0
  28. 270 TNO%=3 : TNAME$="SYNTH-2" : RESTORE 270
  29. 280 FOR Y%=0 TO 4 : FOR X%=0 TO 9:READ T%(Y%,X%):NEXT:NEXT:GOSUB *TNCONV
  30. 290 '
  31. 300 DATA 61, 0, 0, 0, 0, 0, 0, 0, 0, 0
  32. 310 DATA 31, 0, 7, 3, 0,24, 0, 2, 4, 0
  33. 320 DATA 31,12, 0, 7, 1,11, 1, 1, 3, 0
  34. 330 DATA 31,12, 0, 7, 1, 5, 1, 8, 0, 0
  35. 340 DATA 31,12, 0, 7, 1, 3, 1, 4, 0, 0
  36. 350 TNO%=4 : TNAME$="SYNTH-3" : RESTORE 350
  37. 360 FOR Y%=0 TO 4 : FOR X%=0 TO 9:READ T%(Y%,X%):NEXT:NEXT:GOSUB *TNCONV
  38. 370 '
  39. 380 DATA 58, 0, 0, 0, 0, 0, 0, 0, 0, 0
  40. 390 DATA 16, 0, 9, 3, 0,34, 0,15, 7, 0
  41. 400 DATA 16, 0, 0, 3, 0,32, 1,13, 3, 0
  42. 410 DATA 16, 0, 0, 3, 0,34, 1, 4, 0, 0
  43. 420 DATA 16,10, 8, 7, 0, 5, 1, 2, 0, 0
  44. 430 GOTO 630
  45. 440 *TNCONV
  46. 450 FOR I%=0 TO 9 : SWAP T%(2,I%),T%(3,I%) : NEXT
  47. 460 FOR I%=0 TO 3:J%=I%+1
  48. 470   D%( 8+I%)=(T%(J%,8) AND   7)*16+(T%(J%,7) AND 15)
  49. 480   D%(12+I%)=(T%(J%,5) AND 127)
  50. 490   D%(16+I%)=(T%(J%,6) AND   3)*64+(T%(J%,0) AND 31)
  51. 500   D%(20+I%)= T%(J%,1) AND  31
  52. 510   D%(24+I%)= T%(J%,2) AND  31
  53. 520   D%(28+I%)=(T%(J%,4) AND  15)*16+(T%(J%,3) AND 15)
  54. 530 NEXT
  55. 540   D%(32)=T%(0,0)
  56. 550   D%(33)=&HC0+((T%(0,7) AND 3)*16)+((T%(0,8) AND 7)) : D%(34)=0
  57. 560 A$=LEFT$(TNAME$+"        ",8)
  58. 570 FOR I%=0 TO  7 : D%(I%)=ASC(MID$(A$,I%+1,1)) : NEXT
  59. 580 FOR I%=0 TO 47 STEP 2 : L&=D%(I%+1)*256+D%(I%)
  60. 590   IF L&<&H8000 THEN V%(I% \ 2)=CINT(L&)                                                    ELSE V%(I% \ 2)=CINT(L&-&H10000)
  61. 600 NEXT
  62. 610 VOICE TNO%,V% : RETURN
  63. 620 '-----------------------------------------------------
  64. 630 PLAY OFF
  65. 640 T$="T128L8U0%C":PLAY T$,T$,T$,T$,T$,T$,T$,T$,T$,T$,T$,T$,T$,T$
  66. 650 '-----------------------------------------------------
  67. 660 A$="@ 1O5L8   V 9   RRFFF4GF4E&E2.RRRRE8.D8.E8D1"
  68. 670 B$="@ 1O5L8U60V 6 R8RRFFF4GF4E&E2.RRRRE8.D8.  D1"
  69. 680 C$="@ 1O5L8   V 8   RRDDD4ED4C&C2.RRRRC8.<B-8.>C8<B-1>"
  70. 690 D$="@ 3O3L8   V 6 A1A1F1B-1"
  71. 700 E$="@ 6O5L8   V12 D1C1<B-1&B-2B-4>C4"
  72. 710 F$="@ 2O2L4   V12 D1C1<B-1&B-2B->C"
  73. 720 I$="@4O4V15L8%L5 ((V15GV4G)4)4"
  74. 730 J$="@4O4V 5L8%R8 (C4C4C4C4)4"
  75. 740 PLAY A$,B$,C$,D$,E$,F$,,,,,I$,J$
  76. 750 '-----------------------------------------------------
  77. 760 A$="  RRRFF4GF4E&E2.RRRRE8.D8.E8D1&"
  78. 770 B$="R8RRRFF4GF4E&E2.RRRRE8.D8.  D1&"
  79. 780 C$="  RRRDD4ED4C&C2.RRRRC8.<B-8.>C8<B-1&"
  80. 790 F$="  D1C1<B-1&B-1&"
  81. 800 PLAY A$,B$,C$,D$,F$,F$,,,,,I$,J$
  82. 810 '-----------------------------------------------------
  83. 820 A$="   D2DRE4"
  84. 830 B$="D8&D2DRE8"
  85. 840 C$="   B-2B-R>C4"
  86. 850 D$="   B-2F4G4"
  87. 860 F$="   B-2B-4>C4"
  88. 870 PLAY A$,B$,C$,D$,F$,F$,,,,,"(V15GV4G)4"
  89. 880 '-----------------------------------------------------
  90. 890 A$="     RRF2 D4 E8. D8.C8<G8.>C8. E8 RRD2<B-4>C8.D8. E8E8.D8.C8"
  91. 900 B$="    RRRF2 D4 E8. D8.C8<G8.>C8. E8 RRD2<B-4>C8.D8. E8E8.D8."
  92. 910 C$="     RRD2<A4>C8.<G8.G8 E8. G8.>C8<RRB-2F 4 G8.G8.>C8C8.F8.E8"
  93. 920 D$="@3O3V 4   %R L4  DFA>D<CEG>C<B-F>D<B->C<G>EC"
  94. 930 E$="@3O3V 2U70%L L4R8DFA>D<CEG>C<B-F>D<B->C<G>EC8"
  95. 940 F$=" D2.DC2.C<B-2.B->C2.C"
  96. 950 G$="@3O4V15L8 (CRRRRRRRCRRRRRRC)2"
  97. 960 PLAY A$,B$,C$,D$,E$,F$,"%RU-500"+G$,"%LU+500"+G$,,,I$,J$
  98. 970 '-----------------------------------------------------
  99. 980 A$=" RRF2 D4 G8.F8.E8E4 F8 E4 D D2.&D2]]DRE4[["
  100. 990 B$="CRRF2 D4 G8.F8.E8E4 F8 E4 D D2.&D2]]DRE8[["
  101. 1000 C$=" RRD2<A4>E8.D8.C8C4 D8 C4<B-B-2.&B-2]]B-R>C4[["
  102. 1010 D$="  D<A>FDECGE ]]F8.]]G8.]E8]F8.G8.E8F1"
  103. 1020 E$="R8D<A>FDECGE8]]F8.]]G8.]E8]F8.G8.E8F1"
  104. 1030 F$="D2.D4C2.C4<(B-8B-8]B-8B-8)3B-8>B-8C8>C8<[[["
  105. 1040 G$="         CRRRRRRCCRRRRRRCCRCRCRCR (C16C16R8)2 C16C16RCR16C16"
  106. 1050 H$="@2O4L8V15RRRRRRRRRRRRRRRRRRRRRRRR @6RC4C@2C16C16@9<E8<B16B16E8>>@2"
  107. 1060 PLAY A$,B$,C$,D$,E$,F$,G$,G$,"%R3U+500"+H$,"%L3U-500"+H$,I$,J$
  108. 1070 '-----------------------------------------------------
  109. 1080 A$="O5RRFFF4GF4E&E2.RRRRE8.D8.E8D1"
  110. 1090 C$="O5RRDDD4ED4C&C2.RRRRC8.<G8.>C8<A1>"
  111. 1100 D$="@3V10L16O4%C (D<A>DFAFD<A>)2(C<G>CEGEC<G>)4 D<A>DFAFD<A> B->DFB-CEG>C<"
  112. 1110 E$="@3V 8L16O4%CR(D<A>DFAFD<A>)2(C<G>CEGEC<G>)4 D<A>DFAFD  ]]DB-CF G>C<EG[["
  113. 1120 F$="L8(DDDD)2(CCCC)4DDDD<B->B-16B-18C>C16C16<"
  114. 1130 G$="L8(CRCRCCCR)3CRCRCCC32C32C32C32C"
  115. 1140 H$="L8(RRC2C4)3RRC4@9<E<G>>@2C8@2C16C16"
  116. 1150 I$="@4O4V15L 8%L7 ((GG)4)4"
  117. 1160 J$="@4O4V 7L16%R10 ((C16R16C16C16)4)4"
  118. 1170 PLAY "V12"+A$,"V9"+A$,C$,D$,E$,F$,G$,G$,H$,H$,I$,J$
  119. 1180 PLAY A$,A$,C$,D$,E$,F$,G$,G$,H$,H$,I$,J$
  120. 1190 '-----------------------------------------------------
  121. 1200 A$="<B-8.>C8.D4C<B-F>C8.D8.E4D8CEF8.G8.E8F8.G8.E8F1"
  122. 1210 C$="D8.E8.F4ED<A>E8.F8.G4FEGD8.E8.C8D8.E8.C8D1"
  123. 1220 D$="O3B-FB->DFB->DFB-FD<B-FD<B-F >C<G>CEG>CEG>C<GEC<GEC<G< DFAF A>DFD FA>D<A> DFAF A>DFDFA>D<A DD-C<B L32AA-GG- FEE-DL16"
  124. 1230 E$="O3RB-FB->DFB->DFB-FD<B-FD<B-F >C<G>CEG>CEG>C<GEC<GEC<G< DFAF A>DFD FA>D<A> DFAF A>DFDFA>D<A DD-C<B L32AA-GG- FEL16"
  125. 1240 F$="O1L16(B-8>B-<B-)4>(C8>C<C)4((D8>D<D)4)2"
  126. 1250 G$="L16(CRCRCRRCRCRRCRRC)4"
  127. 1260 H$="L16(R4C8.CRCRRC8.C)3R4C8.C@9<<B8B8B8B8>>@2"
  128. 1270 PLAY "O5V12"+A$,"O5V9"+A$,"O4"+C$,D$,E$,F$,G$,G$,H$,H$,I$,J$
  129. 1280 D$="O3 B-FB->DFB->DFB-FD<B-FD<B-F >C<G>CEG>CEG>C<GEC<GEC<G< DFAF A>DFD FA>D<A> DFAF A>DFDFA>D<A <ADFA>D FA>D"
  130. 1290 E$="O3RB-FB->DFB->DFB-FD<B-FD<B-F >C<G>CEG>CEG>C<GEC<GEC<G< DFAF A>DFD FA>D<A> DFAF A>DFDFA>D<A <ADFA>D FA>"
  131. 1300 PLAY A$,A$,">"+C$,D$,E$,F$,G$,G$,H$,H$,I$,J$:GOTO 640
  132. 1310 '-----------------------------------------------------
  133. 1320 A$="@1O4V 9L16 (A8.ARRRRRRARRA8.A2.A4)"
  134. 1330 B$="@3O4V 8L16 (F8.FRRRRRRFRRF8.G2.G4) "
  135. 1340 C$="@3O4V 8L16 (D8.DRRRRRRDRRD8.E2.E4) "
  136. 1350 D$="@3O4V 8L16  R8.RRRRRRRRRRR8.C2.C4<B-8.B-RRRRRRB-RRB-8.>C2.C4 "
  137. 1360 E$="@3O5V 7L16 (>AA<AA>A<AA>A<AA>A<A>A<AA>A<)4"
  138. 1370 F$="       L16  D8.D>>D<DD>D<<RRDRRD8.C2.C4<B-8.B->>B-<B-B->B-<<RRB-RRB-8.>C2.C4 "
  139. 1380 G$="L16(CRRCCRRRRRCRRCRR)4"
  140. 1390 H$="L16R4C4R4R4 @9<E8.<B8.F8.C8.RR>>@2CCR4C4R4R4R4R4@8%R(B32B32)B8%L(E32E32)E8@2%C"
  141. 1400 PLAY A$,B$,C$,D$,E$,F$,G$,G$,H$,H$,,J$
  142. 1410 H$="R4C4R4R4 R4R4R4@9<<FFF8>>@2R4C4R4R4@9<E8.<B8.F8.C8.>>@2CCCC"
  143. 1420 PLAY A$,B$,C$,D$,E$,F$,G$,G$,H$,H$,,J$
  144. 1430 '-----------------------------------------------------
  145. 1440 A$="A2.&A8A8&A1"
  146. 1450 B$="G-2.&G-8F8&F1"
  147. 1460 C$="D2.&D8D8&D1"
  148. 1470 D$="<A2.&A8A8&A1>"
  149. 1480 E$="(>AA<AA>A<AA>A<AA>A<A>A<AA>A<)2"
  150. 1490 F$="L8DDDDDDDD4DDDDDDD"
  151. 1500 G$="L8(CRCRCCCR)2"
  152. 1510 H$="L8(RRC2C4)2"
  153. 1520 PLAY A$,B$,C$,D$,E$,F$,G$,G$,H$,H$
  154. 5000 *めさーじゅ表示
  155. 5010 '------------------------------------------------------ONSHOKU SETTEI
  156. 5020 RESTORE 5050:DIM SON(23):SAD=VARPTR(SON(0)):FOR I=1 TO 1
  157. 5030 FOR ADD=8 TO 33:READ DT$:POKE SAD+ADD,VAL("&H"+DT$):NEXT ADD
  158. 5040 VOICE 9,SON:NEXT I
  159. 5050 DATA 3E,7F,30,73,0,0,0,0,1F,1F,1F,1F
  160. 5060 DATA 0,0,1C,1C,0,0,12,13,0,0,9,F,3C,C0
  161. 5070 '--------------------------------------------------------SYOKI SETTEI
  162. 5080 SCREEN @2:PALETTE:PASTEL:COLOR 0,[128,128,128]:CLS
  163. 5090 BGM 0:DEFINT A-Z:DEFSTR M,R
  164. 5100 T$="T180@106O2V9U0%CL64":PLAY T$+"@9",T$,T$+"U+3000"
  165. 5110 PALETTE 1,[8,8,8]:LINE (0,0)-(639,479),PSET,%1,BF
  166. 5120 '---------------------------------------------KEISEN:MEISAI:KYOKU MEI
  167. 5130 LINE (50,50)-(400,50),PASTEL,7:Y=100
  168. 5140 FOR I=0 TO 14:LINE (35,Y)-(605,Y),PASTEL,7:Y=Y+25:NEXT
  169. 5150 Y=5:FOR I=1 TO 3:READ M:SYMBOL (405,Y),M,1,1,2:Y=Y+19:NEXT
  170. 5160 READ M:SYMBOL (50,53),M,1,1,,,,8
  171. 5170 SYMBOL (103,455),"<             :         >-♪-<             :         >",1,1,7
  172. 5180 X=48:READ M:A=KLEN(M,0):FOR I=1 TO A:MOJ=KMID$(M,I,1)
  173. 5190 SYMBOL (X,15),MOJ,1,2,7,,,13
  174. 5200 IF MOJ=" " THEN PLAY "R":X=X+16:NEXT ELSE PLAY "C16":X=X+16:NEXT
  175. 5210 '-------------------------------------------------------------MESSAGE
  176. 5220 X=60:I=0:Y=83:R="BB-AA-GG-FEE-DD-C>G-GA-AB-B<":RESTORE *MESSAGE
  177. 5230 READ M
  178. 5240 SUU=KLEN(M,0)
  179. 5250 '
  180. 5260 *MAIN
  181. 5270 I=I+1:MOJ = KMID$(M,I,1)
  182. 5280 IF I=SUU+1 THEN I=0:GOTO 5230
  183. 5290 IF MOJ="@" GOTO *SYORI
  184. 5300 IF X=587 THEN X=60:Y=Y+25:PLAY ,R,R
  185. 5310 SYMBOL (X,Y),MOJ,1,1,C,,,9
  186. 5320 IF MOJ="?" OR MOJ="!" OR MOJ="・" THEN PLAY "<<C2>>":GOTO 5350
  187. 5330 IF MOJ=" " OR MOJ="、" THEN PLAY "<<C8>>":GOTO 5350
  188. 5340 IF MOJ="。" THEN PLAY "<<C4>>" ELSE PLAY "C64"
  189. 5350 X=X+17:GOTO *MAIN
  190. 5360 '
  191. 5370 *SYORI
  192. 5380 I=I+1:MOJ = KMID$(M,I,1)
  193. 5390 IF MOJ="E" GOTO *OWARI
  194. 5400 IF MOJ="R" THEN X=60:Y=Y+25:PLAY ,R,R:GOTO *MAIN
  195. 5410 C=VAL(MOJ$):GOTO *MAIN
  196. 5420 '---------------------------------------------------------MEISAI DATA
  197. 5430 DATA "* SKE.メサ-ジュシステム  V2.1","* For 386  V1.1L20 / L21","*"
  198. 5440 DATA "作・編曲/SKEMARO"
  199. 5450 '--------------------------------------------------------MESSAGE DATA
  200. 5460 DATA "   KNIGHT (未使用曲)":'DAIMEI 21 MOJI
  201. 5470 *MESSAGE
  202. 5480 DATA "@7 これも、正確には未使用曲ではありませんが、こういう曲名にすると、なんかカッコいいので。@R"
  203. 5490 DATA "
  204. 5500 DATA " あ!そいえば、昨日、富士通プラザに「フリコレ3」を買いにいったら、注文殺到とかで売り切れてて、申込書を書かされた。4月20日くらいになるとか。"
  205. 5510 DATA " くっそー。もうちょっと早く行っとけばよかった。だって田舎に帰ってたんだもん(そしたら「ハモり魔」にでくわした)。@R"
  206. 5520 DATA " もう、人×ゲームは面白くないし(「タ○ラ」関係の方がおられましたら、ごめんなさい)。田舎の友達も、しれーっとしてみんなくっついちゃってて。どこの家に遊びにいっても、「あれ!?なんでこいつがここに?」ってな事ばっかり。そしたら、"
  207. 5530 DATA "話題はおきまりの、「だって、けんちゃん急に「好きだ」とか言うんだもん。」「ばか!(←愛情たっぷり)初めに言ってきたのは、おまえ(←もう「おまえ」なんて言ってる)だろが。」だ! さあぁ、困ったぞ。みんなカップルだぞ。どこいっても"
  208. 5531 DATA "だぞ。えぇぇい!!(←泣きかけてる。)@E"
  209. 5540 '---------------------------------------------------------OWARI SHORI
  210. 5550 *OWARI
  211. 5560 SYMBOL (128,455),"PLAY START   ANY KEY",1,1,2
  212. 5570 SYMBOL (368,455),"PLAY STOP   PF1",1,1,%1:A$=INPUT$(1)
  213. 5580 SYMBOL (128,455),"PLAY START   ANY KEY",1,1,%1
  214. 5590 SYMBOL (368,455),"PLAY STOP   PF1",1,1,2:PLAY ,R,R
  215. 5600 BGM 1
  216. 5610 RETURN
  217. 65000 BGM 0:PLAY"R64":BGM 1
  218. 65010 CLOSE #1 :KEY(1) OFF:PLAY OFF:RUN"MENU.BAS"
  219.